//728
/**
 * Note: The returned array must be malloced, assume caller calls free().
 */
int* selfDividingNumbers(int left, int right, int* returnSize)
{
    *returnSize=0;
    int num=0;
    int i=0;
    int *p=(int*)malloc(sizeof(int)*(right-left+1));
    for(i=left;i<=right;i++)
    {
        num=i;
        while(num)
        {
            int remainder = num % 10;
            if(remainder==0||i%remainder!=0)
            {
                break;
            }
            num/=10;
        }
        if(num==0)
        p[(*returnSize)++]=i;
    }
    return p;
}